package com.huishu.user.service;

import com.huishu.commons.pojo.BasePage;
import com.huishu.commons.pojo.Result;
import com.huishu.user.pojo.dto.ActivityPageCreateDTO;
import com.huishu.user.pojo.dto.ActivityPageUpdateDTO;
import com.huishu.user.pojo.model.ActivityPageDO;
import com.baomidou.mybatisplus.extension.service.IService;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author generator@ljj
 * @since 2023-06-19
 */
public interface ActivityPageService extends IService<ActivityPageDO> {

    /**
     * 分页查询
     * @param basePage
     * @return
     */
    Result pageList(BasePage basePage);

    /**
     * 新增活动页
     * @param activityPageCreateDTO
     * @return
     */
    Result create(ActivityPageCreateDTO activityPageCreateDTO);

    /**
     * 修改
     * @param activityPageUpdateDTO
     * @return
     */
    Result modify(ActivityPageUpdateDTO activityPageUpdateDTO);

    /**
     * 禁用或者打开
     * @param activityPageUpdateDTO
     * @return
     */
    Result disableOrOpen(ActivityPageUpdateDTO activityPageUpdateDTO);

    /**
     * 根据id查询
     * @param id
     * @return
     */
    Result findById(Long id);

    /**
     * 删除
     * @param id
     * @return
     */
    Result delete(Long id);

    /**
     * 生成分享二维码
     * @param id
     * @return
     */
    Result<String> generateQrCode(Long id);
}
